(* Content-type: application/vnd.wolfram.mathematica *)

(*** Wolfram Notebook File ***)
(* http://www.wolfram.com/nb *)

(* CreatedBy='Mathematica 10.4' *)

(*CacheID: 234*)
(* Internal cache information:
NotebookFileLineBreakTest
NotebookFileLineBreakTest
NotebookDataPosition[       158,          7]
NotebookDataLength[     25986,        817]
NotebookOptionsPosition[     22298,        714]
NotebookOutlinePosition[     24916,        777]
CellTagsIndexPosition[     24831,        772]
WindowTitle->FCRerouteMomenta
WindowFrame->Normal*)

(* Beginning of Notebook Content *)
Notebook[{
Cell[BoxData[GridBox[{
   {Cell["FEYN CALC SYMBOL", "PacletNameCell"], Cell[TextData[Cell[BoxData[
     ActionMenuBox[
      FrameBox[
       InterpretationBox[Cell[TextData[{
         "URL",
         StyleBox[" \[FilledDownTriangle]", "AnchorBarArrow",
          StripOnInput->False]
        }]],
        TextCell[
         Row[{"URL", 
           Style[" \[FilledDownTriangle]", "AnchorBarArrow"]}]]],
       StripOnInput->False], {"\<\"FeynCalc/ref/FCRerouteMomenta\"\>":>
      None, "\<\"Copy Wolfram Documentation Center URL\"\>":>
      Module[{DocumentationSearch`Private`nb$}, 
       DocumentationSearch`Private`nb$ = NotebookPut[
          Notebook[{
            Cell["FeynCalc/ref/FCRerouteMomenta"]}, Visible -> False]]; 
       SelectionMove[DocumentationSearch`Private`nb$, All, Notebook]; 
       FrontEndTokenExecute[DocumentationSearch`Private`nb$, "Copy"]; 
       NotebookClose[DocumentationSearch`Private`nb$]; Null], 
      Delimiter, "\<\"Copy web URL\"\>":>
      Module[{DocumentationSearch`Private`nb$}, 
       DocumentationSearch`Private`nb$ = NotebookPut[
          Notebook[{
            Cell[
             BoxData[
              MakeBoxes[
               Hyperlink[
               "http://reference.wolfram.com/language/FeynCalc/ref/\
FCRerouteMomenta.html"], StandardForm]], "Input", TextClipboardType -> 
             "PlainText"]}, Visible -> False]]; 
       SelectionMove[DocumentationSearch`Private`nb$, All, Notebook]; 
       FrontEndTokenExecute[DocumentationSearch`Private`nb$, "Copy"]; 
       NotebookClose[DocumentationSearch`Private`nb$]; 
       Null], "\<\"Go to web URL\"\>":>FrontEndExecute[{
        NotebookLocate[{
          URL[
           StringJoin[
            If[
             TrueQ[DocumentationBuild`Make`Private`wsmlinkQ$124187], 
             "http://reference.wolfram.com/system-modeler/", 
             "http://reference.wolfram.com/language/"], 
            "FeynCalc/ref/FCRerouteMomenta", ".html"]], None}]}]},
      Appearance->None,
      MenuAppearance->Automatic,
      MenuStyle->"URLMenu"]],
     LineSpacing->{1.4, 0}]], "AnchorBar"]}
  }]], "AnchorBarGrid",
 GridBoxOptions->{GridBoxItemSize->{"Columns" -> {
     Scaled[0.65], {
      Scaled[0.34]}}, "ColumnsIndexed" -> {}, "Rows" -> {{1.}}, 
   "RowsIndexed" -> {}}},
 CellID->1],

Cell[TextData[{
 Cell["FCRerouteMomenta", "ObjectName"],
 Cell[BoxData[
  InterpretationBox[
   StyleBox[
    GraphicsBox[{},
     BaselinePosition->Baseline,
     ImageSize->{8, 0}],
    CacheGraphics->False],
   Spacer[8]]]],
 Cell[BoxData[""], "ObjectNameTranslation"]
}], "ObjectNameGrid"],

Cell[CellGroupData[{

Cell[BoxData[GridBox[{
   {"", Cell[TextData[{
     Cell[BoxData[
      RowBox[{"FCRerouteMomenta", "[", 
       RowBox[{"exp", ",", 
        RowBox[{"{", 
         RowBox[{"p1", ",", "p2", ",", "..."}], "}"}], ",", 
        RowBox[{"{", 
         RowBox[{"k1", ",", "k2", ",", "..."}], "}"}]}], "]"}]], 
      "InlineFormula"],
     " \[LineSeparator] changes the routing of the momenta by exploiting the \
4-momentum conservation law p1+p2+... = k1+k2+... The main aim of this \
function is to simplify the input expression by replacing simple linear \
combinations of the external momenta with shorter expressions. For example, \
in a process p1+p2 -> k1+k2+k3, the combination k1+k2-p2 can be replaced with \
the shorter expression p1-k3. The replacements are applied using the \
FeynCalcExternal form of the expression. Ideally, this function should be \
used directly on the output of a diagram generator such as FeynArts or \
QGRAF."
    }]]}
  }]], "Usage",
 GridBoxOptions->{
 GridBoxBackground->{
  "Columns" -> {{None}}, "ColumnsIndexed" -> {}, "Rows" -> {{None}}, 
   "RowsIndexed" -> {}}},
 CellID->982511436],

Cell[CellGroupData[{

Cell[TextData[Cell[BoxData[
 ButtonBox[Cell[TextData[{
   Cell[BoxData[
    InterpretationBox[
     StyleBox[
      GraphicsBox[{},
       BaselinePosition->Baseline,
       ImageSize->{6, 0}],
      CacheGraphics->False],
     Spacer[6]]]],
   "Details"
  }], "NotesFrameText"],
  Appearance->{Automatic, None},
  BaseStyle->None,
  ButtonFunction:>(FrontEndExecute[{
     FrontEnd`SelectionMove[
      FrontEnd`SelectedNotebook[], All, ButtonCell], 
     FrontEndToken["OpenCloseGroup"], 
     FrontEnd`SelectionMove[
      FrontEnd`SelectedNotebook[], After, CellContents]}]& ),
  Evaluator->None,
  Method->"Preemptive"]]]], "NotesSection",
 WholeCellGroupOpener->True,
 CellGroupingRules->{"SectionGrouping", 50},
 CellID->1654346728],

Cell["", "SectionHeaderSpacer"],

Cell[CellGroupData[{

Cell[BoxData[
 RowBox[{"Options", "[", "FCRerouteMomenta", "]"}]], "Input",
 CellLabel->"In[335]:=",
 CellID->1812704255],

Cell[BoxData[
 FormBox[
  RowBox[{"{", 
   RowBox[{
    RowBox[{"Check", "\[Rule]", "True"}], ",", 
    RowBox[{"DiracGammaCombine", "\[Rule]", "False"}], ",", 
    RowBox[{"Eliminate", "\[Rule]", 
     RowBox[{"{", "}"}]}], ",", 
    RowBox[{"Expand", "\[Rule]", "ExpandAll"}], ",", 
    RowBox[{"InitialSubstitutions", "\[Rule]", 
     RowBox[{"{", "}"}]}], ",", 
    RowBox[{"FeynCalcExternal", "\[Rule]", "False"}], ",", 
    RowBox[{"FCVerbose", "\[Rule]", "False"}], ",", 
    RowBox[{"MaxIterations", "\[Rule]", "\[Infinity]"}], ",", 
    RowBox[{"MomentumCombine", "\[Rule]", "False"}], ",", 
    RowBox[{"Replace", "\[Rule]", 
     RowBox[{"{", 
      RowBox[{
      "FAD", ",", "SFAD", ",", "CFAD", ",", "GFAD", ",", "GS", ",", "GSD", 
       ",", "GSE", ",", "FV", ",", "FVD", ",", "FVE", ",", "CV", ",", "CVD", 
       ",", "CVE", ",", "SP", ",", "SPD", ",", "SPE", ",", "CSP", ",", "CSPD",
        ",", "CSPE", ",", "TC"}], "}"}]}]}], "}"}], 
  TraditionalForm]], "Output",
 ImageSize->{450, 91},
 ImageMargins->{{0, 0}, {0, 0}},
 ImageRegion->{{0, 1}, {0, 1}},
 CellLabel->"Out[335]=",
 CellID->1115039146]
}, Open  ]]
}, Closed]]
}, Open  ]],

Cell[CellGroupData[{

Cell[TextData[{
 Cell[BoxData[
  InterpretationBox[
   StyleBox[
    GraphicsBox[{},
     BaselinePosition->Baseline,
     ImageSize->{6, 0}],
    CacheGraphics->False],
   Spacer[6]]]],
 "Examples",
 "\[NonBreakingSpace]\[NonBreakingSpace]",
 Cell["(1)", "ExampleCount"]
}], "PrimaryExamplesSection",
 WholeCellGroupOpener->True,
 CellTags->"PrimaryExamplesSection",
 CellID->929959985],

Cell[CellGroupData[{

Cell[TextData[{
 "Basic Examples",
 "\[NonBreakingSpace]\[NonBreakingSpace]",
 Cell["(1)", "ExampleCount"]
}], "ExampleSection", "ExampleSection",
 WholeCellGroupOpener->True,
 CellID->521475236],

Cell[TextData[{
 "Reroute momenta according to the momentum conservation relation ",
 Cell[BoxData[
  RowBox[{
   RowBox[{"l1", "+", "l2"}], "=", 
   RowBox[{"p1", "+", "p2", "+", "kp"}]}]], "InlineFormula"],
 "."
}], "Notes",
 CellID->1405927763],

Cell[CellGroupData[{

Cell[BoxData[
 RowBox[{
  RowBox[{"(", 
   RowBox[{"-", "I"}], ")"}], "*", 
  RowBox[{
   RowBox[{"Spinor", "[", 
    RowBox[{
     RowBox[{"-", 
      RowBox[{"Momentum", "[", "l2", "]"}]}], ",", "ME", ",", "1"}], "]"}], 
   ".", 
   RowBox[{"GA", "[", "\[Mu]", "]"}], ".", 
   RowBox[{"Spinor", "[", 
    RowBox[{
     RowBox[{"Momentum", "[", "l1", "]"}], ",", "ME", ",", "1"}], "]"}]}], 
  "*", 
  RowBox[{
   RowBox[{"Spinor", "[", 
    RowBox[{
     RowBox[{"Momentum", "[", "p1", "]"}], ",", 
     RowBox[{"SMP", "[", "\"\<m_Q\>\"", "]"}], ",", "1"}], "]"}], ".", 
   RowBox[{"GS", "[", 
    RowBox[{"Polarization", "[", 
     RowBox[{"kp", ",", 
      RowBox[{"-", "I"}], ",", 
      RowBox[{"Transversality", "\[Rule]", "True"}]}], "]"}], "]"}], ".", 
   RowBox[{"(", 
    RowBox[{
     RowBox[{"GS", "[", 
      RowBox[{"kp", "+", "p1"}], "]"}], "+", 
     RowBox[{"SMP", "[", "\"\<m_Q\>\"", "]"}]}], ")"}], ".", 
   RowBox[{"GA", "[", "\[Mu]", "]"}], ".", 
   RowBox[{"Spinor", "[", 
    RowBox[{
     RowBox[{"-", 
      RowBox[{"Momentum", "[", "p2", "]"}]}], ",", 
     RowBox[{"SMP", "[", "\"\<m_Q\>\"", "]"}], ",", "1"}], "]"}]}], "*", 
  RowBox[{"FAD", "[", 
   RowBox[{
    RowBox[{"kp", "+", "p1", "+", "p2"}], ",", 
    RowBox[{"Dimension", "\[Rule]", "4"}]}], "]"}], "*", 
  RowBox[{"FAD", "[", 
   RowBox[{
    RowBox[{"{", 
     RowBox[{
      RowBox[{
       RowBox[{"-", "l1"}], "-", "l2", "-", "p2"}], ",", 
      RowBox[{"SMP", "[", "\"\<m_Q\>\"", "]"}]}], "}"}], ",", 
    RowBox[{"Dimension", "\[Rule]", "4"}]}], "]"}], "*", 
  RowBox[{"SDF", "[", 
   RowBox[{"cq", ",", "cqbar"}], "]"}], "*", 
  RowBox[{
   RowBox[{"SMP", "[", "\"\<e\>\"", "]"}], "^", "3"}], "*", 
  RowBox[{
   RowBox[{"SMP", "[", "\"\<Q_u\>\"", "]"}], "^", "2"}]}]], "Input",
 CellLabel->"In[1]:=",
 CellID->1789291289],

Cell[BoxData[
 FormBox[
  FormBox[
   RowBox[{"-", 
    RowBox[{"(", 
     RowBox[{
      RowBox[{"(", 
       RowBox[{"\[ImaginaryI]", " ", 
        SuperscriptBox["\<\"e\"\>", "3"], " ", 
        SubsuperscriptBox["Q", "u", "2"], " ", 
        SubscriptBox["\[Delta]", 
         RowBox[{
          FormBox["cq",
           TraditionalForm], 
          FormBox["cqbar",
           TraditionalForm]}]], " ", 
        RowBox[{
         RowBox[{"(", 
          RowBox[{
           FormBox["\<\"\[CurlyPhi]\"\>",
            TraditionalForm], 
           FormBox["\<\"(\"\>",
            TraditionalForm], 
           FormBox[
            RowBox[{"-", 
             OverscriptBox[
              FormBox["l2",
               TraditionalForm], "_"]}],
            TraditionalForm], 
           FormBox["\<\",\"\>",
            TraditionalForm], 
           FormBox["ME",
            TraditionalForm], 
           FormBox["\<\")\"\>",
            TraditionalForm]}], ")"}], ".", 
         FormBox[
          SuperscriptBox[
           OverscriptBox["\[Gamma]", "_"], 
           FormBox[
            FormBox["\[Mu]",
             TraditionalForm],
            TraditionalForm]],
          TraditionalForm], ".", 
         RowBox[{"(", 
          RowBox[{
           FormBox["\<\"\[CurlyPhi]\"\>",
            TraditionalForm], 
           FormBox["\<\"(\"\>",
            TraditionalForm], 
           FormBox[
            OverscriptBox[
             FormBox["l1",
              TraditionalForm], "_"],
            TraditionalForm], 
           FormBox["\<\",\"\>",
            TraditionalForm], 
           FormBox["ME",
            TraditionalForm], 
           FormBox["\<\")\"\>",
            TraditionalForm]}], ")"}]}], " ", 
        RowBox[{
         RowBox[{"(", 
          RowBox[{
           FormBox["\<\"\[CurlyPhi]\"\>",
            TraditionalForm], 
           FormBox["\<\"(\"\>",
            TraditionalForm], 
           FormBox[
            OverscriptBox[
             FormBox["p1",
              TraditionalForm], "_"],
            TraditionalForm], 
           FormBox["\<\",\"\>",
            TraditionalForm], 
           FormBox[
            SubscriptBox["m", "Q"],
            TraditionalForm], 
           FormBox["\<\")\"\>",
            TraditionalForm]}], ")"}], ".", 
         RowBox[{"(", 
          FormBox[
           RowBox[{
            OverscriptBox["\[Gamma]", "_"], "\[CenterDot]", 
            FormBox[
             RowBox[{
              SuperscriptBox[
               OverscriptBox["\[CurlyEpsilon]", "_"], "*"], "(", 
              FormBox["kp",
               TraditionalForm], ")"}],
             TraditionalForm]}],
           TraditionalForm], ")"}], ".", 
         RowBox[{"(", 
          RowBox[{
           FormBox[
            RowBox[{
             OverscriptBox["\[Gamma]", "_"], "\[CenterDot]", "(", 
             FormBox[
              FormBox[
               RowBox[{
                OverscriptBox[
                 FormBox["kp",
                  TraditionalForm], "_"], "+", 
                OverscriptBox[
                 FormBox["p1",
                  TraditionalForm], "_"]}],
               TraditionalForm],
              TraditionalForm], ")"}],
            TraditionalForm], "+", 
           SubscriptBox["m", "Q"]}], ")"}], ".", 
         FormBox[
          SuperscriptBox[
           OverscriptBox["\[Gamma]", "_"], 
           FormBox[
            FormBox["\[Mu]",
             TraditionalForm],
            TraditionalForm]],
          TraditionalForm], ".", 
         RowBox[{"(", 
          RowBox[{
           FormBox["\<\"\[CurlyPhi]\"\>",
            TraditionalForm], 
           FormBox["\<\"(\"\>",
            TraditionalForm], 
           FormBox[
            RowBox[{"-", 
             OverscriptBox[
              FormBox["p2",
               TraditionalForm], "_"]}],
            TraditionalForm], 
           FormBox["\<\",\"\>",
            TraditionalForm], 
           FormBox[
            SubscriptBox["m", "Q"],
            TraditionalForm], 
           FormBox["\<\")\"\>",
            TraditionalForm]}], ")"}]}]}], ")"}], "/", 
      RowBox[{"(", 
       RowBox[{
        InterpretationBox[
         SuperscriptBox[
          RowBox[{
           FormBox["\<\"(\"\>",
            TraditionalForm], 
           FormBox[
            FormBox[
             RowBox[{
              OverscriptBox[
               FormBox["kp",
                TraditionalForm], "_"], "+", 
              OverscriptBox[
               FormBox["p1",
                TraditionalForm], "_"], "+", 
              OverscriptBox[
               FormBox["p2",
                TraditionalForm], "_"]}],
             TraditionalForm],
            TraditionalForm], 
           FormBox["\<\")\"\>",
            TraditionalForm]}], "2"],
         SequenceForm[
          FeynCalc`Pair[
           
           FeynCalc`Momentum[$CellContext`kp + $CellContext`p1 + \
$CellContext`p2], 
           
           FeynCalc`Momentum[$CellContext`kp + $CellContext`p1 + \
$CellContext`p2]]],
         Editable->False], " ", 
        RowBox[{"(", 
         InterpretationBox[
          RowBox[{
           SuperscriptBox[
            RowBox[{
             FormBox["\<\"(\"\>",
              TraditionalForm], 
             FormBox[
              FormBox[
               RowBox[{
                RowBox[{"-", 
                 OverscriptBox[
                  FormBox["l1",
                   TraditionalForm], "_"]}], "-", 
                OverscriptBox[
                 FormBox["l2",
                  TraditionalForm], "_"], "-", 
                OverscriptBox[
                 FormBox["p2",
                  TraditionalForm], "_"]}],
               TraditionalForm],
              TraditionalForm], 
             FormBox["\<\")\"\>",
              TraditionalForm]}], "2"], "\[InvisibleSpace]", "\<\"-\"\>", 
           "\[InvisibleSpace]", 
           SubsuperscriptBox["m", "Q", "2"]}],
          SequenceForm[
           FeynCalc`Pair[
            
            FeynCalc`Momentum[-$CellContext`l1 - $CellContext`l2 - \
$CellContext`p2], 
            
            FeynCalc`Momentum[-$CellContext`l1 - $CellContext`l2 - \
$CellContext`p2]], "-", FeynCalc`SMP["m_Q"]^2],
          Editable->False], ")"}]}], ")"}]}], ")"}]}],
   TraditionalForm], TraditionalForm]], "Output",
 ImageSize->{530, 70},
 ImageMargins->{{0, 0}, {0, 0}},
 ImageRegion->{{0, 1}, {0, 1}},
 CellLabel->"Out[1]=",
 CellID->1039412028]
}, Open  ]],

Cell[CellGroupData[{

Cell[BoxData[
 RowBox[{"FCRerouteMomenta", "[", 
  RowBox[{"%", ",", 
   RowBox[{"{", 
    RowBox[{"l1", ",", "l2"}], "}"}], ",", 
   RowBox[{"{", 
    RowBox[{"p1", ",", "p2", ",", "kp"}], "}"}]}], "]"}]], "Input",
 CellLabel->"In[2]:=",
 CellID->216847885],

Cell[BoxData[
 FormBox[
  FormBox[
   RowBox[{"-", 
    RowBox[{"(", 
     RowBox[{
      RowBox[{"(", 
       RowBox[{"\[ImaginaryI]", " ", 
        SuperscriptBox["\<\"e\"\>", "3"], " ", 
        SubsuperscriptBox["Q", "u", "2"], " ", 
        SubscriptBox["\[Delta]", 
         RowBox[{
          FormBox[
           FormBox["cq",
            TraditionalForm],
           TraditionalForm], 
          FormBox[
           FormBox["cqbar",
            TraditionalForm],
           TraditionalForm]}]], " ", 
        RowBox[{
         RowBox[{"(", 
          RowBox[{
           FormBox["\<\"\[CurlyPhi]\"\>",
            TraditionalForm], 
           FormBox["\<\"(\"\>",
            TraditionalForm], 
           FormBox[
            RowBox[{"-", 
             OverscriptBox[
              FormBox["l2",
               TraditionalForm], "_"]}],
            TraditionalForm], 
           FormBox["\<\",\"\>",
            TraditionalForm], 
           FormBox["ME",
            TraditionalForm], 
           FormBox["\<\")\"\>",
            TraditionalForm]}], ")"}], ".", 
         SuperscriptBox[
          OverscriptBox["\[Gamma]", "_"], 
          FormBox[
           FormBox["\[Mu]",
            TraditionalForm],
           TraditionalForm]], ".", 
         RowBox[{"(", 
          RowBox[{
           FormBox["\<\"\[CurlyPhi]\"\>",
            TraditionalForm], 
           FormBox["\<\"(\"\>",
            TraditionalForm], 
           FormBox[
            OverscriptBox[
             FormBox["l1",
              TraditionalForm], "_"],
            TraditionalForm], 
           FormBox["\<\",\"\>",
            TraditionalForm], 
           FormBox["ME",
            TraditionalForm], 
           FormBox["\<\")\"\>",
            TraditionalForm]}], ")"}]}], " ", 
        RowBox[{
         RowBox[{"(", 
          RowBox[{
           FormBox["\<\"\[CurlyPhi]\"\>",
            TraditionalForm], 
           FormBox["\<\"(\"\>",
            TraditionalForm], 
           FormBox[
            OverscriptBox[
             FormBox["p1",
              TraditionalForm], "_"],
            TraditionalForm], 
           FormBox["\<\",\"\>",
            TraditionalForm], 
           FormBox[
            SubscriptBox["m", "Q"],
            TraditionalForm], 
           FormBox["\<\")\"\>",
            TraditionalForm]}], ")"}], ".", 
         RowBox[{"(", 
          RowBox[{
           OverscriptBox["\[Gamma]", "_"], "\[CenterDot]", 
           FormBox[
            RowBox[{
             SuperscriptBox[
              OverscriptBox["\[CurlyEpsilon]", "_"], "*"], "(", 
             FormBox["kp",
              TraditionalForm], ")"}],
            TraditionalForm]}], ")"}], ".", 
         RowBox[{"(", 
          RowBox[{
           RowBox[{
            OverscriptBox["\[Gamma]", "_"], "\[CenterDot]", "(", 
            FormBox[
             FormBox[
              RowBox[{
               OverscriptBox[
                FormBox["kp",
                 TraditionalForm], "_"], "+", 
               OverscriptBox[
                FormBox["p1",
                 TraditionalForm], "_"]}],
              TraditionalForm],
             TraditionalForm], ")"}], "+", 
           SubscriptBox["m", "Q"]}], ")"}], ".", 
         SuperscriptBox[
          OverscriptBox["\[Gamma]", "_"], 
          FormBox[
           FormBox["\[Mu]",
            TraditionalForm],
           TraditionalForm]], ".", 
         RowBox[{"(", 
          RowBox[{
           FormBox["\<\"\[CurlyPhi]\"\>",
            TraditionalForm], 
           FormBox["\<\"(\"\>",
            TraditionalForm], 
           FormBox[
            RowBox[{"-", 
             OverscriptBox[
              FormBox["p2",
               TraditionalForm], "_"]}],
            TraditionalForm], 
           FormBox["\<\",\"\>",
            TraditionalForm], 
           FormBox[
            SubscriptBox["m", "Q"],
            TraditionalForm], 
           FormBox["\<\")\"\>",
            TraditionalForm]}], ")"}]}]}], ")"}], "/", 
      RowBox[{"(", 
       RowBox[{
        InterpretationBox[
         SuperscriptBox[
          RowBox[{
           FormBox["\<\"(\"\>",
            TraditionalForm], 
           FormBox[
            FormBox[
             RowBox[{
              OverscriptBox[
               FormBox["l1",
                TraditionalForm], "_"], "+", 
              OverscriptBox[
               FormBox["l2",
                TraditionalForm], "_"]}],
             TraditionalForm],
            TraditionalForm], 
           FormBox["\<\")\"\>",
            TraditionalForm]}], "2"],
         SequenceForm[
          FeynCalc`Pair[
          FeynCalc`Momentum[$CellContext`l1] + 
           FeynCalc`Momentum[$CellContext`l2], 
           FeynCalc`Momentum[$CellContext`l1] + 
           FeynCalc`Momentum[$CellContext`l2]]],
         Editable->False], " ", 
        RowBox[{"(", 
         InterpretationBox[
          RowBox[{
           SuperscriptBox[
            RowBox[{
             FormBox["\<\"(\"\>",
              TraditionalForm], 
             FormBox[
              FormBox[
               RowBox[{
                RowBox[{"-", 
                 OverscriptBox[
                  FormBox["l1",
                   TraditionalForm], "_"]}], "-", 
                OverscriptBox[
                 FormBox["l2",
                  TraditionalForm], "_"], "-", 
                OverscriptBox[
                 FormBox["p2",
                  TraditionalForm], "_"]}],
               TraditionalForm],
              TraditionalForm], 
             FormBox["\<\")\"\>",
              TraditionalForm]}], "2"], "\[InvisibleSpace]", "\<\"-\"\>", 
           "\[InvisibleSpace]", 
           SubsuperscriptBox["m", "Q", "2"]}],
          SequenceForm[
           
           FeynCalc`Pair[-FeynCalc`Momentum[$CellContext`l1] - 
            FeynCalc`Momentum[$CellContext`l2] - 
            FeynCalc`Momentum[$CellContext`p2], -
             FeynCalc`Momentum[$CellContext`l1] - 
            FeynCalc`Momentum[$CellContext`l2] - 
            FeynCalc`Momentum[$CellContext`p2]], "-", FeynCalc`SMP["m_Q"]^2],
          Editable->False], ")"}]}], ")"}]}], ")"}]}],
   TraditionalForm], TraditionalForm]], "Output",
 ImageSize->{530, 70},
 ImageMargins->{{0, 0}, {0, 0}},
 ImageRegion->{{0, 1}, {0, 1}},
 CellLabel->"Out[2]=",
 CellID->1950312178]
}, Open  ]]
}, Open  ]]
}, Open  ]],

Cell[" ", "FooterCell"]
},
Saveable->False,
ScreenStyleEnvironment->"Working",
WindowSize->{725, 750},
WindowMargins->{{-10, Automatic}, {Automatic, -8}},
WindowTitle->"FCRerouteMomenta",
TaggingRules->{
 "ModificationHighlight" -> False, "ColorType" -> "SymbolColor", "LinkTrails" -> 
  GridBox[{{
      RowBox[{
        ButtonBox[
        "FeynCalc", ButtonData -> "paclet:FeynCalc/guide/FeynCalc", 
         BaseStyle -> {"Link", "DockedLinkTrail"}]}]}}, ColumnAlignments -> 
    Left], "HasOptions" -> False, "ExampleCounter" -> 1, "NeedPlatMsgIn" -> 
  None, "RootCaptions" -> "", 
  "Metadata" -> {
   "built" -> "{2020, 6, 20, 19, 6, 17.817257}", 
    "history" -> {"9.3", "", "", ""}, "context" -> "FeynCalc`", 
    "keywords" -> {}, "specialkeywords" -> {}, 
    "tutorialcollectionlinks" -> {}, "index" -> True, "label" -> 
    "Feyn Calc Symbol", "language" -> "en", "paclet" -> "FeynCalc", "status" -> 
    "None", "summary" -> 
    "FCRerouteMomenta[exp, {p1, p2, ...}, {k1, k2, ...}] changes the routing \
of the momenta by exploiting the 4-momentum conservation law p1+p2+... = \
k1+k2+... The main aim of this function is to simplify the input expression \
by replacing simple linear combinations of the external momenta with shorter \
expressions. For example, in a process p1+p2 -> k1+k2+k3, the combination \
k1+k2-p2 can be replaced with the shorter expression p1-k3. The replacements \
are applied using the FeynCalcExternal form of the expression. Ideally, this \
function should be used directly on the output of a diagram generator such as \
FeynArts or QGRAF.", "synonyms" -> {}, "tabletags" -> {}, "title" -> 
    "FCRerouteMomenta", "titlemodifier" -> "", "windowtitle" -> 
    "FCRerouteMomenta", "type" -> "Symbol", "uri" -> 
    "FeynCalc/ref/FCRerouteMomenta"}, "SearchTextTranslated" -> ""},
CellContext->"Global`",
FrontEndVersion->"10.4 for Linux x86 (64-bit) (April 11, 2016)",
StyleDefinitions->Notebook[{
   Cell[
    StyleData[
    StyleDefinitions -> FrontEnd`FileName[{"Wolfram"}, "Reference.nb"]]], 
   Cell[
    StyleData["Input"], CellContext -> "Global`"], 
   Cell[
    StyleData["Output"], CellContext -> "Global`"]}, Visible -> False, 
  FrontEndVersion -> "10.4 for Linux x86 (64-bit) (April 11, 2016)", 
  StyleDefinitions -> "Default.nb"]
]
(* End of Notebook Content *)

(* Internal cache information *)
(*CellTagsOutline
CellTagsIndex->{
 "PrimaryExamplesSection"->{
  Cell[6465, 189, 387, 15, 31, "PrimaryExamplesSection",
   CellTags->"PrimaryExamplesSection",
   CellID->929959985]}
 }
*)
(*CellTagsIndex
CellTagsIndex->{
 {"PrimaryExamplesSection", 24688, 765}
 }
*)
(*NotebookFileOutline
Notebook[{
Cell[588, 21, 2306, 53, 53, "AnchorBarGrid",
 CellID->1],
Cell[2897, 76, 293, 11, 45, "ObjectNameGrid"],
Cell[CellGroupData[{
Cell[3215, 91, 1122, 25, 171, "Usage",
 CellID->982511436],
Cell[CellGroupData[{
Cell[4362, 120, 739, 24, 31, "NotesSection",
 CellGroupingRules->{"SectionGrouping", 50},
 CellID->1654346728],
Cell[5104, 146, 31, 0, 70, "SectionHeaderSpacer"],
Cell[CellGroupData[{
Cell[5160, 150, 121, 3, 70, "Input",
 CellID->1812704255],
Cell[5284, 155, 1120, 27, 112, "Output",
 CellID->1115039146]
}, Open  ]]
}, Closed]]
}, Open  ]],
Cell[CellGroupData[{
Cell[6465, 189, 387, 15, 31, "PrimaryExamplesSection",
 CellTags->"PrimaryExamplesSection",
 CellID->929959985],
Cell[CellGroupData[{
Cell[6877, 208, 195, 6, 26, "ExampleSection",
 CellID->521475236],
Cell[7075, 216, 247, 8, 32, "Notes",
 CellID->1405927763],
Cell[CellGroupData[{
Cell[7347, 228, 1819, 55, 135, "Input",
 CellID->1789291289],
Cell[9169, 285, 6449, 208, 91, "Output",
 CellID->1039412028]
}, Open  ]],
Cell[CellGroupData[{
Cell[15655, 498, 258, 8, 27, "Input",
 CellID->216847885],
Cell[15916, 508, 6316, 199, 91, "Output",
 CellID->1950312178]
}, Open  ]]
}, Open  ]]
}, Open  ]],
Cell[22271, 712, 23, 0, 41, "FooterCell"]
}
]
*)

(* End of internal cache information *)

